Methods and apparatus to perform an automated gain control protocol with an amplifier based on historical data corresponding to contextual data

ABSTRACT

Methods and apparatus to perform an automated gain control protocol with an amplifier based on historical data corresponding to contextual data are disclosed. An example apparatus includes a controller to select an automatic gain control (AGC) parameter for an AGC protocol based on historical data corresponding to contextual data, the contextual data including at least one of a time during which the AGC protocol is performed, a panelist identified by a meter, demographics of an audience identified by the meter, a location of the meter, a station identified by the meter, a media type identified by the meter, or a sound pressure level identified by the meter; and a processor to perform the AGC protocol based on the selected AGC parameter.

RELATED APPLICATION

This patent arises from a continuation of International PatentApplication No. PCT/US20/38196, entitled “METHODS AND APPARATUS TOPERFORM AN AUTOMATED GAIN CONTROL PROTOCOL WITH AN AMPLIFIER BASED ONHISTORICAL DATA CORRESPONDING TO CONTEXTUAL DATA,” filed on Jun. 17,2020, which claims priority to U.S. patent application Ser. No.16/452,485, entitled “METHODS AND APPARATUS TO PERFORM AN AUTOMATED GAINCONTROL PROTOCOL WITH AN AMPLIFIER BASED ON HISTORICAL DATACORRESPONDING TO CONTEXTUAL DATA,” filed on Jun. 25, 2019. Priority toInternational Patent Application No. PCT/US20/38196 and U.S. patentapplication Ser. No. 16/452,485 is claimed. International PatentApplication No. PCT/US20/38196 and U.S. patent application Ser. No.16/452,485 are incorporated herein by reference in their entireties.

FIELD OF THE DISCLOSURE

This disclosure relates generally to audio signal recovery and, moreparticularly, to methods and apparatus to perform an automated gaincontrol protocol with an amplifier based on historical datacorresponding to contextual data.

BACKGROUND

Media monitoring meters are used in homes and other locations todetermine exposure to media (e.g., audio media and/or video media)output by media output devices. Such media output devices includetelevisions, radios, computers, tablets, and/or any other device capableof outputting media. In some examples, an audio component of the mediais encoded with a watermark (e.g., a code) that includes data related tothe media. In such examples, when the meter receives the media, themeter extracts the watermark to identify the media. Additionally, themeter transmits the extracted watermark to an audience measuremententity to monitor media exposure. In some examples, the meter generatesa signature or fingerprint of the media based on the characteristics ofthe audio component of the media. In such examples, the meter transmitsthe signature to the audience measurement entity. The audiencemeasurement entity compares the generated signature to stored referencesignatures in a database to identify a match, thereby identifying themedia. The audience measurement entity monitors media exposure based ona match between the generated signature and a reference signature.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of an example environment for selecting AGCparameters of an AGC protocol based on historic data in accordance withteachings of this disclosure.

FIG. 2 is a block diagram of the example AGC parameter determiner ofFIG. 1.

FIGS. 3-4 are flowcharts representative of example machine readableinstructions that may be executed to implement the example AGC parameterdeterminer of FIGS. 1 and 2 to determine AGC parameter(s) for an AGCprotocol.

FIG. 5 is a block diagram of a processor platform structured to executethe example machine readable instructions of FIGS. 3-4 to control theexample AGC parameter determiner of FIGS. 1 and 2.

The figures are not to scale. Wherever possible, the same referencenumbers will be used throughout the drawing(s) and accompanying writtendescription to refer to the same or like parts.

Descriptors “first,” “second,” “third,” etc. are used herein whenidentifying multiple elements or components which may be referred toseparately. Unless otherwise specified or understood based on theircontext of use, such descriptors are not intended to impute any meaningof priority, physical order or arrangement in a list, or ordering intime but are merely used as labels for referring to multiple elements orcomponents separately for ease of understanding the disclosed examples.In some examples, the descriptor “first” may be used to refer to anelement in the detailed description, while the same element may bereferred to in a claim with a different descriptor such as “second” or“third.” In such instances, it should be understood that suchdescriptors are used merely for ease of referencing multiple elements orcomponents

DETAILED DESCRIPTION

When a panelist signs up to have their exposure to media monitored by anaudience measurement entity, the audience measurement entity sends atechnician to the home of the panelist to install a meter (e.g., a mediamonitor) capable of gathering media exposure data from a media outputdevice(s) (e.g., a television, a radio, a computer, etc.). Generally,the meter includes or is otherwise connected to a microphone and/or amagnetic-coupling device to gather ambient audio. In this manner, whenthe media output device is “on,” the microphone may receive an acousticsignal transmitted by the media output device. As further describedbelow, the meter may extract audio watermarks from the acoustic signalto identify the media. Additionally or alternatively, the meter maygenerate signatures and/or fingerprints based on the media. The metertransmits data related to the watermarks and/or signatures to theaudience measurement entity to monitor media exposure. Examplesdisclosed herein relate to efficiently selecting a desirable gain toamply a received signal at a meter prior to processing the audio.

Audio watermarking is a technique used to identify media such astelevision broadcasts, radio broadcasts, advertisements (televisionand/or radio), downloaded media, streaming media, prepackaged media,etc. Existing audio watermarking techniques identify media by embeddingone or more audio codes (e.g., one or more watermarks), such as mediaidentifying information (e.g., herein information and/or data) and/or anidentifier that may be mapped to media identifying information, into anaudio and/or video component. In some examples, the audio or videocomponent is selected to have a signal characteristic sufficient to maskthe watermark. As used herein, the terms “code” or “watermark” are usedinterchangeably and are defined to mean any identification information(e.g., an identifier) that may be inserted or embedded in the audio orvideo of media (e.g., a program or advertisement) for the purpose ofidentifying the media or for another purpose such as tuning (e.g., apacket identifying header). As used herein “media” refers to audioand/or visual (still or moving) content and/or advertisements. Toidentify watermarked media, the watermark(s) are extracted and used toaccess a table of reference watermarks that are mapped to mediaidentifying information.

Unlike media monitoring techniques based on codes and/or watermarksincluded with and/or embedded in the monitored media, signature orfingerprint-based media monitoring techniques generally use one or moreinherent characteristics of the monitored media during a monitoring timeinterval to generate a substantially unique proxy for the media. Such aproxy is referred to as a signature or fingerprint, and can take anyform (e.g., a series of digital values, a waveform, etc.) representativeof any aspect(s) of the media signal(s) (e.g., the audio and/or videosignals forming the media presentation being monitored). A signature maybe a series of signatures collected in series over a time interval. Agood signature is repeatable when processing the same mediapresentation, but is unique relative to other (e.g., different)presentations of other (e.g., different) media. Accordingly, the term“signature” and “fingerprint” are used interchangeably herein and aredefined herein to mean a proxy for identifying media that is generatedfrom one or more inherent characteristics of the media.

Signature-based media monitoring generally involves determining (e.g.,generating and/or collecting) signature(s) representative of a mediasignal (e.g., an audio signal and/or a video signal) output by amonitored media device and comparing the monitored signature(s) to oneor more references signatures corresponding to known (e.g., reference)media sources. Various comparison criteria, such as a cross-correlationvalue, a Hamming distance, etc., can be evaluated to determine whether amonitored signature matches a particular reference signature. When amatch between the monitored signature and one of the referencesignatures is found, the monitored media can be identified ascorresponding to the particular reference media represented by thereference signature that matched the monitored signature. Becauseattributes, such as an identifier of the media, a presentation time, abroadcast channel, etc., are collected for the reference signature,these attributes may then be associated with the monitored media whosemonitored signature matched the reference signature. Example systems foridentifying media based on codes and/or signatures are long known andwere first disclosed in Thomas, U.S. Pat. No. 5,481,294, which is herebyincorporated by reference in its entirety.

When a meter senses audio via a sensor (e.g., microphone), the meteruses an amplifier to amplify the sensed audio signal prior to processingthe audio signal to generate signatures and/or extract watermarks. Theamount of gain (e.g., amplification, which may be greater than 1, lessthan 1 or equal to 1) used by the amplifier corresponds to the accuracyof signature generation and/or watermark extraction. For example, whenthe volume of audio output by an media presentation device is low, thegain should be a high gain to successfully generate a signature and/orextract a watermark. However, when the volume of the audio output by themedia presentation device is high, applying a high gain will result inundesired clipping of the audio, leading to inaccurate signatures and/orwatermark extraction failures.

Automated gain control (AGC) protocols can be implemented toautomatically determine a satisfactory (e.g., optimal) gain level toutilize in the amplifier of a meter that allows the meter tosuccessfully generate signatures and/or extract watermarks withoutclipping the audio signal. An AGC protocol adjusts the gain within arange of gain levels to attempt to select the highest gain that does notclip the signal. For example, an AGC protocol may ramp down from thehighest gain of the range to a gain at which clipping ceases. Once themeter determines that clipping has ceased, the meter utilizes the gain(e.g., locks the gain) at which clipping ceases for processing audiountil the AGC protocol is rerun (e.g., after a duration of time, after atriggering event, etc.).

Traditional AGC protocols test the same range of gains each time theprotocol is triggered. For example, if the AGC protocol starts at thehighest gain (100 decibels (dB)) of an amplifier and ramps down to thelowest gain (e.g., 5 dB) of an amplifier, every time the AGC protocol isrun the amplifier will start at the highest gain. Accordingly, if a useris watching a television show at a high volume and the AGC protocol istriggered every two minutes, the gain selected by the AGC protocol willbe a low gain (e.g., 10 dB). Although it is likely that the volume ofthe television show will not decrease significantly within two minutes,when a subsequent AGC protocol is performed, the protocol will start at100 dB, even though clipping will likely occur until the gain is reducedto the 10 dB level, thereby requiring additional time and processorresources. Examples disclosed herein utilize past AGC selected gains toadjust the AGC protocol for subsequent AGC measurements to conserve timeand/or processor resources. Using the example from above, if the firstAGC protocol resulted in a selected gain of 10 dB, a subsequent AGCprotocol may start at 20 dB instead of 100 dB. In this manner, thesubsequent AGC protocol will select an appropriate gain fast thantraditional techniques which causes less processor resources to beconsumed for the subsequent AGC protocol.

Additionally or alternatively, examples disclosed herein may utilizevarious available data to adjust AGC protocol parameters, such as therange of gains and/or starting gain of an AGC protocol. For example, ifthe meter has identified a panelist, examples disclosed herein may trackthe listening habits of the panelist and select AGC parameters based onthe panelists habits. The panelist may historically listen to audio atvery high volumes corresponding to low selected gains from previousprotocols. For example, the resulting gains from previous AGC protocolsfor a particular panelist may range from 20 dB to 5 dB. In such anexample, when a AGC protocol is about to be performed, examplesdisclosed herein utilize the history of the panelist to reduce thestarting gain and/or range of gains to be used for the AGC protocolbased on the history and perform the AGC protocol based on the selectedstarting gain and/or range of gains. Using the above example, instead ofperforming an AGC protocol by ramping a gain down from 100 dB to 0 dB,examples disclosed herein determine that the panelist is being exposedto the media and may start the AGC protocol at 25 dB (e.g., the highestrecorded gain for the panelist with a buffer) and ramp down to 0 dBbased on the AGC result history corresponding to the panelist.Additionally or alternatively, examples disclosed herein may adjust thestarting gain and/or range of gains used in an AGC based on time ofday/week/month/year, type of media (e.g., sports, movies, sitcoms,etc.), channels, channel favorites, sound pressure level, location ofmeter (e.g., in bedroom, family room, kitchen, bar, etc.), etc.

FIG. 1 illustrates an example environment 100 for selecting AGCparameters for an AGC protocol based on historic data in accordance withteachings of this disclosure. The example environment 100 of FIG. 1includes an example media output device 102, example speakers 104 a, 104b, an example audio signal 106, an example microphone 110, and anexample meter 112. The example meter 112 includes an example amplifier114, an example audio processor 116, and an example AGC parameterdeterminer 118.

The example media output device 102 of FIG. 1 is a device that outputsmedia. Although the example media output device 102 of FIG. 1 isillustrated as a television, the example media output device may be aradio, an MP3 player, a video game counsel, a stereo system, a mobiledevice, a computing device, a tablet, a laptop, a projector, a DVDplayer, a set-top-box, an over-the-top device, and/or any device capableof outputting media. The example media output device may includespeakers 104 a and/or may be coupled, or otherwise connected to portablespeakers 104 b via a wired or wireless connection. The example speakers104 a, 104 b output the audio portion of the media output by the examplemedia output device.

The example microphone 110 of FIG. 1 is an audio sensor that receivesthe example audio signal 106 (e.g., as part of a sensing of ambientsound). The microphone 110 converts the example audio signal 106 into anelectrical signal representative of the audio signal. The examplemicrophone 110 transmits the electrical signal to the example amplifier114 of the example meter 112. The example amplifier 114 amplifies theelectrical signal so that the meter 112 can generate signatures and/orextract watermarks based on the amplified electrical signal, as furtherdescribed below.

The example meter 112 of FIG. 1 is a device installed in a location of apanelist that monitors exposure to media from the example media outputdevice 102. Panelists are users included in panels maintained by aratings entity (e.g., an audience measurement company) that owns and/oroperates the ratings entity subsystem. The example meter 112 may extractwatermarks and/or generate signatures from media output by the examplemedia output device 102 to identify the media. The example meter 112 iscoupled or otherwise connected to the example microphone 110. Asdescribed above, the example microphone 110 is a device that receivesambient audio. In some examples, the microphone 110 may bemagnetic-coupling device (e.g., an induction coupling device, a loopcoupling receiver, a telecoil receiver, etc.), and/or any device capableof receiving an audio signal. In such examples, the magnetic-couplingdevice may receive an audio signal (e.g., the example audio signal 106)wirelessly rather than acoustically. The example microphone 110 and theexample meter 112 may be connected via a wired or wireless connection.In some examples, the example microphone 110 and the example meter 112may be one device. For example, the example microphone 110 may beembedded in the example meter 112. The example meter 112 includes theexample amplifier 114, the example AGC parameter determiner 118 and theexample audio processor 116.

The example amplifier 114 of FIG. 1 obtains the electrical signalrepresentative of the example audio 106 from the example microphone 110.The example amplifier 114 amplifies power and/or amplitude theelectrical signal using a gain level. The example audio processor 116can adjust the gain level from any value between a maximum gain of theamplifier 114 to a minimum gain of the amplifier 114. The maximum gainand minimum gain of the amplifier 114 depend on the hardwarecharacteristics of the amplifier 114.

The example audio processor 116 of FIG. 1 processes audio based on theamplified electrical signal. As described above, if the electricalsignal is amplified too much, clipping can occur which reduces theeffectiveness of signature generation and/or watermark extraction.However, if the electrical signal is amplified too little, theelectrical signal is not powerful enough for the audio processor 116 togenerate a signature and/or extract a watermark. Accordingly, theexample audio processor 116 perform an AGC protocol to adjust the gainof the amplifier 114 to attempt to select the highest, or a sufficientlyhigh, gain for the amplifier 114 that does not result in clipping. TheAGC protocol may include starting the amplifier 114 at a starting gainlevel where clipping is occurring, decreasing the gain until theclipping ceases. In some examples, the audio processor 116 may performother types of AGC protocols. For example, the audio processor 116 maystart at a gain level where clipping doesn't occur, and increase thegain until clipping occurs to determine the highest, or a high, gainlevel before clipping begins to occur. The example audio processor 116adjusts the gains during the AGC protocol based on the AGC parametersgenerated by the example AGC parameter determiner 118. The AGCparameters may correspond to the starting gain level to use during theAGC protocol and/or the range of gain levels to use during the rampingof the AGC protocol.

The example AGC parameter determiner 118 of FIG. 1 generates the AGCparameters based on historical data corresponding to time ofday/week/month/year, previous AGC protocol results, media type, channel,station, favorites, panelist data, sound pressure level, location of themeter, etc. Additionally or alternatively, the example AGC parameterdeterminer 118 may determine parameters for different types ofprotocols, such as sound pressure algorithms. Initially, the AGCparameter determiner 118 may utilize standard AGC parameters (e.g., aninitial gain level and/or gain range for an AGC protocol). However, asthe example audio processor 116 performs AGC protocols, the example AGCparameter determiner 118 stores the results (e.g., the selected gainlevel resulting from an AGC protocol) and/or other contextual data inconjunction with the results to build a database of historical data thatcan be used to select AGC parameters for subsequent AGC protocols. Forexample, if the audio processor 116 performs an AGC protocol resultingin a gain level of 50 dB, the AGC parameter determiner 118 stores theselected 50 dB gain level in conjunction with at least one of theday/week/month/year, panelist information, demographic information,media type information, channel information, station information, soundpressure level, location of meter, etc. As additional AGC protocols areperformed, the database of historical information is developed,resulting in more accurate AGC parameters for subsequent AGC protocols.As used herein, historical data is defined as result(s) of one or morepreviously performed protocol (e.g., previously selected gain levels).For example, when a gain is selected from an AGC protocol, the gain isstored in one or more locations the database as historical data. As usedherein, contextual information is defined as any contextual informationcorresponding to an AGC protocol. For example, when an AGC protocol isperformed, the location of the meter, panelists logged into the meter,demographics of audience members, the time of day/week/month/year, thesound pressure information, etc. may be contextual informationcorresponding to the AGC protocol. When an AGC protocol is performed,the resulting gain level selected by the protocol is stored in thedatabase in conjunction with contextual information known when the AGCprotocol is performed. Accordingly, the historical data is stored in thedatabase in conjunction with historical (e.g., prior) contextualinformation.

When a AGC protocol is about to be performed (e.g., periodically,aperiodically, and/or based on a trigger), the example AGC parameterdeterminer 118 of FIG. 1 determines if any contextual information (e.g.,time of day/week/month/year, channel, station, panelist information,demographic, etc.) is known at that moment. For example, the audioprocessor 116 and/or another component of the meter 112 may transmitcontextual information to the example AGC parameter determiner 118. Ifcontextual information is known, the example AGC parameter determiner118 uses historic data corresponding to the known contextual informationto determine the AGC parameters (e.g., based on a weighted average, aworst case scenario analysis, and/or any other statistical analysis).For example, if an AGC protocol is about to be performed and the exampleAGC parameter determiner 118 determines that a known panelist iswatching sports in the evening, the AGC parameter determiner 118determines the previous results (e.g., selected gain levels)corresponding to any one and/or combination of the last selected gainlevel, the panelist, sports, and/or evening. In such an example, the AGCparameter determiner 118 determines that previous selected gain levelsfor the panelist range from 25-30 dB, previous selected gains for sportsrange from 50-10 dB, previous selected gains for evening range from50-15 dB, the previous selected gain levels for the panelist whenwatching sports corresponds to 30-27 dB, and the previous selected gainlevel for the meter was 25 dB, the AGC parameter determiner 118 mayselect the starting gain level and/or gain level range based on any oneor combination of the panelist gain range, the sports gain range, theevening gain range, the panelist and sports gain range, and/or theprevious gain. For example, the AGC parameter determiner 118 may performa weighted average, a statistical distribution, and/or a worse caseanalysis to select a starting gain level and/or gain range for theupcoming AGC protocol. In some examples, the example AGC parameterdeterminer 118 is located outside of the meter 112 (e.g., at a server,in the cloud, etc.) and communicates with the meter 112 via a networkcommunication. The example AGC parameter determiner 118 is furtherdescribed below in conjunction with FIG. 2.

FIG. 2 is a block diagram of an example implementation of the exampleAGC parameter determiner 118 of FIG. 1, which is to generate historicaldata corresponding to AGC protocols and use the historical data togenerate AGC parameters for subsequent AGC protocols. While the exampleAGC parameter determiner 118 is described in conjunction with theexample meter 112 and media output device 102 of FIG. 1, the example AGCparameter determiner 118 may be utilized to in conjunction with any typeof meter and/or media output device. The example AGC parameterdeterminer 118 of FIG. 2 includes an example component interface 200, anexample AGC parameter controller 202, an example clock 204, an examplestorage controller 206, and an example historical data storage 208.

The example component interface 200 of FIG. 2 interfaces with theexample audio processor 116 and/or any other component of the examplemeter 112. For example, the component interface 200 receivesinstructions from the example audio processor 116 to generate AGCparameters for an upcoming AGC protocol. In some examples, the examplecomponent interface 200 may receive contextual data (e.g., time data,panelist data, demographic data, channel data, station data, soundpressure level, location data, etc.) from the example audio processor116, the example clock 204, and/or any other component. In someexamples, the example component interface 200 may receive the selectedgain level resulting from an AGC protocol being performed by the exampleaudio processor 116 with the amplifier 114. In some examples, such aswhen the AGC parameter determiner 118 is located at a server, theexample component interface 200 is a wireless interface to wirelesslycommunicate data to/from the example meter 112.

The example AGC parameter controller 202 of FIG. 2 selects AGCparameters based on contextual information and the historicalinformation stored in the example historical data storage 208 thatcorresponds to the contextual information. In some examples, the AGCparameter controller 202 may access the example historical data storage208 to determine the past X number of gain levels selected by the audioprocessor 116 and generate a starting gain level for the upcoming AGCprotocol based on the X number of gain levels. For example, if the AGCprotocol starts at a high gain value and decreases until clipping ceasesand the previous 5 selected gain values range from 35 dB to 10 dB, theAGC parameter controller 202 may select the initial gain level (e.g., 40dB) to be some amount (e.g., 5 dB) more than the highest gain level ofthe last X selected gain levels (e.g., 40 dB=5 dB+35 dB). The amount maybe based on user preferences, manufacturer preferences, and/orstatistical analysis (e.g., one or more standard deviations above thehighest value with respect to the last X selected gain levels).Additionally or alternatively, the example AGC parameter controller 202selects and/or adjusts AGC parameters based on other historical data.Using the example of above, the AGC parameter controller 202 may selectan initial gain level of 40 dB and may adjust the initial gain levelbased on other known characteristics. For example, if the AGC parametercontroller 202 determines that the time of day corresponds to morningand a station currently being viewed is CNN, the AGC parametercontroller 202 may access previous AGC parameters corresponding tomorning and/or CNN. In such an example, if the selected gain levels fromprevious AGC protocols for morning and CNN have never been higher than20 dB, the example AGC parameter controller 202 may adjust the initialgain level of 40 dB to some lower gain level corresponding to the 20 dB(e.g., based on an average, a weighted average, some value above themaximum 20 dB gain for morning and/or CNN, etc.). The amount ofadjustment is based on user and/or manufacturer preferences. In someexamples, the certain AGC parameters may be weighted more than otherparameters in a weighted average. For example, panelist data may beweighted more than media type. In some examples, AGC parameters thathave more data and/or more complex data stored in the example historicaldata storage 208 may be weighed more than parameters with less dataand/or less complex data. For example, AGC parameters corresponding to(i) a time of day and (ii) a media type may way more than AGC parameterscorresponding to only channel data.

The example clock 204 of FIG. 2 tracks time. The tracked time istransmitted to the example AGC parameter controller 202. In this manner,the AGC parameter controller 202 can use the time as part (e.g.,corresponding to a time of day) of the contextual information used togenerate the AGC parameters. In some examples, when the examplecomponent interface 200 obtains a selected gain level in response to theaudio processor 116 preforming an AGC protocol, the example clock 204generates a timestamp. In this manner, the example storage controller206 can store the selected gain level in conjunction with the timestampand/or a time of day/week/month/year corresponding to the timestamp.

The example storage controller 206 of FIG. 2 determines how to storehistoric data (e.g., selected gain levels from previous AGC protocols)in conjunction with known contextual data (e.g., panelist data,demographic data, time data, channel data, station data, location data,sound pressure level, etc.). For example, when the audio processor 116of FIG. 1 performs an AGC protocol, the audio processor 116 transmitsthe selected gain level to the example storage controller 206 (e.g., viathe example component interface 200). In some examples, the audioprocessor 116 and/or another component transmits known contextual data(e.g., separately or as part of the selected gain) at the time the AGCprotocol was performed. For example, if the audio processor 116 and/orother components have identified one or more panelists (e.g., based onthe panelists identifying themselves to the meter 112), demographics ofthe panelists, the type of media currently being output by the mediaoutput device 102 (e.g., sports, talk, movie, music, etc.), whether ornot the media corresponds to a station identified as a favorite,location of the example meter 112, sound pressure level of the media,etc., the audio processor 116 and/or other components transmit suchknown contextual data to the example storage controller 206. In someexamples, the storage controller 206 obtains a timestamp for the AGCprotocol. The example storage controller 206 stores the selected gainlevel in conjunction with the contextual information and timestamp. Forexample, the storage controller 206 may store the selected gain level inconjunction with contextual information individually and/or incombination. For example, if the storage controller 206 receives aselected gain level of 55 dB in conjunction with a 25-35 year old malelistening to talk radio at 7:30 AM on a Tuesday, the storage controller206 may store the 55 dB in conjunction with 25-35 year old people,males, talk radio, morning, weekdays, and any combination of thecontextual information (e.g., 25-35 males, weekday mornings, maleslistening to talk radio, 25-25 year old people listening to talk radioon a weekday, etc.) into the example historical data storage 208. Insome examples, the storage controller 206 processes the timestamp todetermine the time of day, week, month, and/or year to store theselected gain level in conjunction with a time period. In some examples,the storage controller 206 stores the last X selected gain levels at alocation in the example historical data storage 208. When a new selectedgain is obtained, the example storage controller 206 discards the oldestgain level from the location of the example historical data storage 208and stores the new selected gain. In this manner, the example AGCparameter controller 202 can look to the location to determine AGCparameters based on the last X selected gain levels.

While an example manner of implementing the example meter 112 isillustrated in FIG. 1 and an example manner of implementing the exampleAGC parameter determiner 118 of FIG. 1 is illustrated in FIG. 2, one ormore of the elements, processes and/or devices illustrated in FIG. 2 maybe combined, divided, re-arranged, omitted, eliminated and/orimplemented in any other way. Further, the example amplifier 114, theexample audio processor, the example AGC parameter determiner 118,and/or, more generally, the example meter 112 of FIG. 1 and the examplecomponent interface 200, the example AGC parameter controller 202, theexample clock 204, the example storage controller 206, the examplehistorical data storage 208, and/or, more generally, the example AGCparameter determiner 118 of FIG. 2 may be implemented by hardware,software, firmware and/or any combination of hardware, software and/orfirmware. Thus, for example, any of the example amplifier 114, theexample audio processor, the example AGC parameter determiner 118,and/or, more generally, the example meter 112 of FIG. 1 and the examplecomponent interface 200, the example AGC parameter controller 202, theexample clock 204, the example storage controller 206, the examplehistorical data storage 208, and/or, more generally, the example AGCparameter determiner 118 of FIG. 2 could be implemented by one or moreanalog or digital circuit(s), logic circuits, programmable processor(s),programmable controller(s), graphics processing unit(s) (GPU(s)),digital signal processor(s) (DSP(s)), application specific integratedcircuit(s) (ASIC(s)), programmable logic device(s) (PLD(s)) and/or fieldprogrammable logic device(s) (FPLD(s)). When reading any of theapparatus or system claims of this patent to cover a purely softwareand/or firmware implementation, at least one of the example amplifier114, the example audio processor, the example AGC parameter determiner118, and/or, more generally, the example meter 112 of FIG. 1 and theexample component interface 200, the example AGC parameter controller202, the example clock 204, the example storage controller 206, theexample historical data storage 208, and/or, more generally, the exampleAGC parameter determiner 118 of FIG. 2 is/are hereby expressly definedto include a non-transitory computer readable storage device or storagedisk such as a memory, a digital versatile disk (DVD), a compact disk(CD), a Blu-ray disk, etc. including the software and/or firmware.Further still, the example meter 112 of FIG. 1 and/or the example AGCparameter determiner 118 of FIG. 2 may include one or more elements,processes and/or devices in addition to, or instead of, thoseillustrated in FIGS. 1 and/or 2, and/or may include more than one of anyor all of the illustrated elements, processes and devices. As usedherein, the phrase “in communication,” including variations thereof,encompasses direct communication and/or indirect communication throughone or more intermediary components, and does not require directphysical (e.g., wired) communication and/or constant communication, butrather additionally includes selective communication at periodicintervals, scheduled intervals, aperiodic intervals, and/or one-timeevents.

A flowchart representative of example hardware logic, machine readableinstructions, hardware implemented state machines, and/or anycombination thereof for implementing the example AGC parameterdeterminer 118 of FIG. 2 is shown in FIGS. 3-4. The machine readableinstructions may be one or more executable programs or portion(s) of anexecutable program for execution by a computer processor such as theprocessor 512 shown in the example processor platform 500 discussedbelow in connection with FIG. 5. The program may be embodied in softwarestored on a non-transitory computer readable storage medium such as aCD-ROM, a floppy disk, a hard drive, a DVD, a Blu-ray disk, or a memoryassociated with the processor 512, but the entire program and/or partsthereof could alternatively be executed by a device other than theprocessor 512 and/or embodied in firmware or dedicated hardware.Further, although the example program is described with reference to theflowchart illustrated in FIGS. 3-4, many other methods of implementingthe example AGC parameter determiner 118 may alternatively be used. Forexample, the order of execution of the blocks may be changed, and/orsome of the blocks described may be changed, eliminated, or combined.Additionally or alternatively, any or all of the blocks may beimplemented by one or more hardware circuits (e.g., discrete and/orintegrated analog and/or digital circuitry, an FPGA, an ASIC, acomparator, an operational-amplifier (op-amp), a logic circuit, etc.)structured to perform the corresponding operation without executingsoftware or firmware.

The machine readable instructions described herein may be stored in oneor more of a compressed format, an encrypted format, a fragmentedformat, a packaged format, etc. Machine readable instructions asdescribed herein may be stored as data (e.g., portions of instructions,code, representations of code, etc.) that may be utilized to create,manufacture, and/or produce machine executable instructions. Forexample, the machine readable instructions may be fragmented and storedon one or more storage devices and/or computing devices (e.g., servers).The machine readable instructions may require one or more ofinstallation, modification, adaptation, updating, combining,supplementing, configuring, decryption, decompression, unpacking,distribution, reassignment, etc. in order to make them directly readableand/or executable by a computing device and/or other machine. Forexample, the machine readable instructions may be stored in multipleparts, which are individually compressed, encrypted, and stored onseparate computing devices, wherein the parts when decrypted,decompressed, and combined from a set of executable instructions thatimplement a program such as that described herein. In another example,the machine readable instructions may be stored in a state in which theymay be read by a computer, but require addition of a library (e.g., adynamic link library (DLL)), a software development kit (SDK), anapplication programming interface (API), etc. in order to execute theinstructions on a particular computing device or other device. Inanother example, the machine readable instructions may need to beconfigured (e.g., settings stored, data input, network addressesrecorded, etc.) before the machine readable instructions and/or thecorresponding program(s) can be executed in whole or in part. Thus, thedisclosed machine readable instructions and/or corresponding program(s)are intended to encompass such machine readable instructions and/orprogram(s) regardless of the particular format or state of the machinereadable instructions and/or program(s) when stored or otherwise at restor in transit.

As mentioned above, the example processes of FIGS. 3-4 may beimplemented using executable instructions (e.g., computer and/or machinereadable instructions) stored on a non-transitory computer and/ormachine readable medium such as a hard disk drive, a flash memory, aread-only memory, a compact disk, a digital versatile disk, a cache, arandom-access memory and/or any other storage device or storage disk inwhich information is stored for any duration (e.g., for extended timeperiods, permanently, for brief instances, for temporarily buffering,and/or for caching of the information). As used herein, the termnon-transitory computer readable medium is expressly defined to includeany type of computer readable storage device and/or storage disk and toexclude propagating signals and to exclude transmission media.

“Including” and “comprising” (and all forms and tenses thereof) are usedherein to be open ended terms. Thus, whenever a claim employs any formof “include” or “comprise” (e.g., comprises, includes, comprising,including, having, etc.) as a preamble or within a claim recitation ofany kind, it is to be understood that additional elements, terms, etc.may be present without falling outside the scope of the correspondingclaim or recitation. As used herein, when the phrase “at least” is usedas the transition term in, for example, a preamble of a claim, it isopen-ended in the same manner as the term “comprising” and “including”are open ended. The term “and/or” when used, for example, in a form suchas A, B, and/or C refers to any combination or subset of A, B, C such as(1) A alone, (2) B alone, (3) C alone, (4) A with B, (5) A with C, (6) Bwith C, and (7) A with B and with C. As used herein in the context ofdescribing structures, components, items, objects and/or things, thephrase “at least one of A and B” is intended to refer to implementationsincluding any of (1) at least one A, (2) at least one B, and (3) atleast one A and at least one B. Similarly, as used herein in the contextof describing structures, components, items, objects and/or things, thephrase “at least one of A or B” is intended to refer to implementationsincluding any of (1) at least one A, (2) at least one B, and (3) atleast one A and at least one B. As used herein in the context ofdescribing the performance or execution of processes, instructions,actions, activities and/or steps, the phrase “at least one of A and B”is intended to refer to implementations including any of (1) at leastone A, (2) at least one B, and (3) at least one A and at least one B.Similarly, as used herein in the context of describing the performanceor execution of processes, instructions, actions, activities and/orsteps, the phrase “at least one of A or B” is intended to refer toimplementations including any of (1) at least one A, (2) at least one B,and (3) at least one A and at least one B.

FIG. 3 is an example flowchart 300 representative of example machinereadable instructions that may be executed by the example AGC parameterdeterminer 118 of FIGS. 1 and 2 to select AGC parameters for an AGCprotocol based on historical data. Although the instructions of FIG. 3are described in conjunction with the example meter 112, microphone 110,media output device 102, and AGC parameter determiner 118 of FIGS. 1 and2, the example instructions may be utilized by any type of meter,microphone, media output device, and/or AGC parameter determiner.Although the example flowchart 300 of FIG. 3 is described in conjunctionwith AGC gain levels, the flowchart 300 may be described in conjunctionwith other attributes, such as sound pressure algorithms.

At block 302, the example AGC parameter controller 202 determines if anAGC protocol is about to be performed. For example, the componentinterface 200 may receive a trigger from the example audio processor 116and/or another component of the meter 112 or the AGC parametercontroller 202 may determine that a predefined duration of time haspassed to signify that an AGC protocol needs to be performed. If theexample AGC parameter controller 202 determines that an AGC protocol isnot to be performed (block 302: NO), control returns to block 302 untilan AGC protocol is to be performed.

If the example AGC parameter controller 202 determines that an AGCprotocol is to be performed (block 302: YES), the example AGC parametercontroller 202 obtains contextual data (e.g., via the example componentinterface 200 and/or the example clock 204) corresponding to the time,the media, the meter and/or the panelists (block 304). As describedabove, the contextual data may be one or more identified panelists,demographics of the panelists, location of the meter, the type of mediacurrently being output by the media output device 102 (e.g., sports,talk, movie, music, etc.), whether or not the media corresponds to astation identified as a favorite, sound pressure level of the media, atime of day/week/month/year, etc.

At block 306, the example AGC parameter controller 202 selects AGCparameters (e.g., a starting gain level and/or a range of gain levels toperform the AGC protocol) based on historical data corresponding to thecorresponding contextual data and historical data. For example, if thecontextual information identifies a particular panelist and the timeidentifies the evening and the AGC protocol only requires an initialgain value (e.g., the AGC protocol will start at an initial maximum gainlevel and reduce the gain until clipping ceases), the AGC parametercontroller 202 will identify the highest selected gain in the historicaldata storage 208 that has been stored in conjunction with the panelist(e.g., 50 dB), evening (e.g., 60 dB), and/or the panelist and evening(e.g., 25 dB). Additionally, the historical data storage 208 may alsoidentify the highest gain (or average of) of the past X selected gainlevels (e.g., 15 dB). In such an example, the AGC parameter controller202 may calculated a weighted average of the identified gain levels toselect the AGC parameter for the AGC protocol. The weights may be basedon use preferences, manufacturer preferences, and/or accuracy of thedifferent ADC parameters (e.g., based on statistical analysis).Additionally or alternatively, the AGC parameter controller 202 mayselect the AGC parameters based on the last X selected gain levels fromprevious AGC protocols (e.g., using an average, a maximum value, aminimum value, a range, etc.). In some examples, the last X selectedgain level (e.g., regardless of contextual data) from previous AGCprotocols are included in the weighted average of the historical datacorresponding to the contextual data. The last X selected gain levelsare stored in the example historical data storage 208. Once the AGCparameter controller 202 calculates the gain level based on the weightedaverage, the AGC parameter controller 202 may add a buffer value to thegain value for added security.

At block 308, the example AGC parameter controller 202 instructs theexample audio processor 116 to perform the AGC protocol based on theselected AGC parameters. Upon receiving the instructions, the audioprocessor 116 performs the AGC protocol using the selected AGCparameters to identify a gain level to utilize for the example amplifier114 to generate signature and/or extract watermarks without clipping theaudio signal. At block 310, the example storage controller 26 obtains(e.g., via the example component interface 200) the selected gain levelfrom the audio processor 116. At block 312, the example storagecontroller 206 updates the AGC information in the example historicaldata storage 208 based on the obtained selected gain level and thecontextual data, as further described below in conjunction with FIG. 4.

FIG. 4 is an example flowchart 312 representative of example machinereadable instructions that may be executed by the example AGC parameterdeterminer 118 of FIGS. 1 and 2 update historical data in the examplehistorical data storage 208 based on the obtained select gain level andthe contextual data, as described above in conjunction with block 312 ofFIG. 3. Although the instructions of FIG. 3 are described in conjunctionwith the example meter 112, microphone 110, media output device 102, andAGC parameter determiner 118 of FIGS. 1 and 2, the example instructionsmay be utilized by any type of meter, microphone, media output device,and/or AGC parameter determiner.

At block 400, the example storage controller 206 discards the Xth storedAGC gain level from the section of the example historical data storage208 corresponding to the previous X selected AGC gain levels. Asdescribed above in conjunction with FIG. 2, the example historical datastorage 208 has a section memory dedicated to the X gain levels selectedin previous AGC protocols (e.g., the previous X AGC gain levels).Accordingly, when a new AGC level is selected, the oldest AGC gain levelis discarded so that the section of memory corresponds to the X mostrecently selected AGC gain levels. At block 402, the example storagecontroller 206 stores (e.g., in the example historical data storage 208)the currently selected AGC gain level in conjunction with the previous Xselected gain levels (e.g., in the above described section of memory inthe example historical data storage 208).

At block 404, the example storage controller 206 stores the AGC gainlevel in conjunction with the time data in the example historical datastorage 208. For example, the storage controller 206 may, based on thetimestamp for the example clock 204, determine the time of day (e.g.,morning, afternoon, evening, late night, etc.), time of week (e.g.,weekend, weekday, Friday, etc.), and/or time of year (e.g., winter,spring, summer, fall) and store the example AGC gain level inconjunction with any one and/or any combination of the time of day, timeof week, and/or time of year. For example, if an gain level selected bythe AGC protocol is 30 dB and the timestamp corresponds to a weekendevening in the winter, the example storage controller 206 may store theexample 50 dB selected gain in conjunction with weekend, evening,winter, weekend evenings, weekend in winter, evening in winter, and/orweekend evening in winter. In this manner, during a subsequent selectionof AGC parameters, the example AGC parameter determiner 118 can selectan AGC parameter based, in part, on the historical data corresponding totime of day, time of week, and/or time of year.

At block 406, the example storage controller 206 determines if there ispanelist and/or demographic data available. The panelist and/ordemographic data may be available when, for example, the meter 112 isregistered and/or when a panelists signs into the meter 112 toself-identify. Other components of the example meter 112 track whichpanelists are currently signed in and/or the demographics of theaudience members and/or panelists corresponding to the meter 112.Accordingly, the example storage controller 206 determines that panelistand/or demographic data is available when the component interface 200receives the panelist and/or demographic data from other components ofthe example meter 112. If the example storage controller 206 determinesthat there is no panelist and/or demographic data available (block 406:NO), control continues to block 410. If the example storage controller206 determines that there is panelist and/or demographic data available(block 406: YES), the example storage controller 206 stores the AGC gainlevel in conjunction with the time data, panelist data, and/ordemographic data in the example historical data storage 208 (block 408).For example, if then panelist data corresponds to panelist “A” and thetime data corresponds to weekday morning, the example storage controller206 may store the selected AGC gain level in conjunction with thepanelist “A,” the panelist “A” in the morning, the panelist “A” duringweekdays, and/or the panelist “A” during weekday mornings.

At block 410, the example storage controller 206 determines if there isstation (e.g., channel, radio station, etc.) and/or media type data(e.g., sports, news, movie, podcast, music, particular episode, etc.)available. The panelist and/or demographic data may be available when,for example, the meter 112 has identified a station and/or media typebased on an extracted watermark. Accordingly, the example storagecontroller 206 determines that station and/or media type data isavailable when the component interface 200 receives the station and/ormedia type data from the example audio processor 116 and/or othercomponents of the example meter 112. If the example storage controller206 determines that there is no station and/or media type data available(block 410: NO), control continues to block 414. If the example storagecontroller 206 determines that there is station and/or media type dataavailable (block 410: YES), the example storage controller 206 storesthe AGC gain level in conjunction with the time data, panelist data,demographic data, station data, and/or media type data in the examplehistorical data storage 208 (block 412). For example, if then panelistdata corresponds to panelist “A”, the time data corresponds to evening,and the media type data corresponds to movie, the example storagecontroller 206 may store the selected AGC gain level in conjunction withthe panelist “A,” the panelist “A” in the evening, the panelist “A”while watching movies, and/or the panelist “A” during the evening whilewatching movies.

At block 414, the example storage controller 206 determines if there issound pressure level data available. The sound pressure data may beavailable based on ambient audio measured by a microphone. For example,the microphone may obtain ambient audio and a processor may calculatethe sound pressure data based on the ambient audio captured by themicrophone. Accordingly, the example storage controller 206 determinesthat sound pressure data is available when the component interface 200receives the sound pressure data from the other components of theexample meter 112. If the example storage controller 206 determines thatthere is no sound pressure data available (block 414: NO), controlreturns to block 302 of FIG. 3. If the example storage controller 206determines that there is station and/or media type data available (block414: YES), the example storage controller 206 stores the AGC gain levelin conjunction with the time data, panelist data, demographic data,station data, media type data, and/or sound pressure data in the examplehistorical data storage 208 (block 416). For example, if then panelistdata corresponds to panelist “A”, the time data corresponds to winter,and the sound pressure data corresponds to 65 dB, the example storagecontroller 206 may store the selected AGC gain level in conjunction withthe panelist “A,” the panelist “A” in the winter, the panelist “A” whilethe sound pressure is 65 dB, and/or the panelist “A” during the winterwhile the sound pressure is 65 dB. After block 416, control returns toblock 302 of FIG. 3. Although the example flowchart 312 describesupdating historical data by storing the selected gain level inconjunction with time, panelist data, demographic data, station data,media type, and/or sound pressure level data, any available data (e.g.,location of meter, media output device type, etc.) may be stored in theexample historical data storage 208 in conjunction with the selectedgain.

FIG. 5 is a block diagram of an example processor platform 500structured to execute the instructions of FIGS. 3-4 to implement themeter 112 of FIG. 1. The processor platform 500 can be, for example, aserver, a personal computer, a mobile device (e.g., a cell phone, asmart phone, a tablet such as an iPad™), a personal digital assistant(PDA), an Internet appliance, a gaming console, a personal videorecorder, a set top box, an audio meter, a personal people meter, aheadset or other wearable device, or any other type of computing device.

The processor platform 500 of the illustrated example includes aprocessor 512. The processor 512 of the illustrated example is hardware.For example, the processor 512 can be implemented by one or moreintegrated circuits, logic circuits, microprocessors, GPUs, DSPs, orcontrollers from any desired family or manufacturer. The hardwareprocessor may be a semiconductor based (e.g., silicon based) device. Inthis example, the processor implements the example amplifier 114, theexample audio processor 116, the example component interface 200, theexample AGC parameter controller 202, the example clock 204, and/or theexample storage controller 206.

The processor 512 of the illustrated example includes a local memory 513(e.g., a cache). The processor 512 of the illustrated example is incommunication with a main memory including a volatile memory 514 and anon-volatile memory 516 via a bus 518. The volatile memory 514 may beimplemented by Synchronous Dynamic Random Access Memory (SDRAM), DynamicRandom Access Memory (DRAM), RAMBUS® Dynamic Random Access Memory(RDRAM®) and/or any other type of random access memory device. Thenon-volatile memory 516 may be implemented by flash memory and/or anyother desired type of memory device. Access to the main memory 514, 516is controlled by a memory controller. Although the example historicaldata storage 208 is implemented in the example local memory 513, theexample historical data storage 208 may be implemented by the examplevolatile memory 514 and/or non-volatile memory 516.

The processor platform 500 of the illustrated example also includes aninterface circuit 520. The interface circuit 520 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB), a Bluetooth® interface, a near fieldcommunication (NFC) interface, and/or a PCI express interface.

In the illustrated example, one or more input devices 522 are connectedto the interface circuit 520. The input device(s) 522 permit(s) a userto enter data and/or commands into the processor 512. The inputdevice(s) can be implemented by, for example, an audio sensor, amicrophone, a camera (still or video), a keyboard, a button, a mouse, atouchscreen, a track-pad, a trackball, isopoint and/or a voicerecognition system.

One or more output devices 524 are also connected to the interfacecircuit 520 of the illustrated example. The output devices 524 can beimplemented, for example, by display devices (e.g., a light emittingdiode (LED), an organic light emitting diode (OLED), a liquid crystaldisplay (LCD), a cathode ray tube display (CRT), an in-place switching(IPS) display, a touchscreen, etc.), a tactile output device, a printerand/or speaker. The interface circuit 520 of the illustrated example,thus, typically includes a graphics driver card, a graphics driver chipand/or a graphics driver processor.

The interface circuit 520 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem, a residential gateway, a wireless access point, and/or a networkinterface to facilitate exchange of data with external machines (e.g.,computing devices of any kind) via a network 526. The communication canbe via, for example, an Ethernet connection, a digital subscriber line(DSL) connection, a telephone line connection, a coaxial cable system, asatellite system, a line-of-site wireless system, a cellular telephonesystem, etc.

The processor platform 500 of the illustrated example also includes oneor more mass storage devices 528 for storing software and/or data.Examples of such mass storage devices 528 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, redundantarray of independent disks (RAID) systems, and digital versatile disk(DVD) drives.

The machine executable instructions 532 of FIGS. 3-4 may be stored inthe mass storage device 528, in the volatile memory 514, in thenon-volatile memory 516, and/or on a removable non-transitory computerreadable storage medium such as a CD or DVD.

From the foregoing, it will be appreciated that example methods,apparatus and articles of manufacture have been disclosed that performan automated gain control protocol with an amplifier based on historicaldata corresponding to contextual data. The disclosed methods, apparatusand articles of manufacture improve the efficiency of using a computingdevice by decreasing the total number of gain levels needed during anAGC protocol to determine the optimal gain level. For example, insteadof performing an AGC protocol that starts at the highest gain of anamplifier, historical data can set the starting gain level and/or rangeof gain value for the AGC protocol to result in a reduction of time andresources for the AGC protocol. The disclosed methods, apparatus andarticles of manufacture are accordingly directed to one or moreimprovement(s) in the functioning of a computer.

Although certain example methods, apparatus and articles of manufacturehave been described herein, other implementations are possible. Thescope of coverage of this patent is not limited thereto. On thecontrary, this patent covers all methods, apparatus and articles ofmanufacture fairly falling within the scope of the claims of thispatent.

1. (canceled)
 2. An apparatus comprising: memory; instructions in theapparatus; and processor circuitry to execute the instructions to:select an automatic gain control (AGC) parameter for an AGC protocolbased on historical data corresponding to contextual data; perform theAGC protocol based on the selected AGC parameter; and store a result ofthe AGC protocol in conjunction with the contextual data to update thehistorical data.
 3. The apparatus of claim 2, wherein the AGC parameteris at least one of an initial gain level of the AGC protocol or a rangeof gain levels to apply in the AGC protocol.
 4. The apparatus of claim2, wherein to perform the AGC protocol, the processor circuitry to:initialize an adjustable gain level of the AGC protocol to an initialgain level corresponding to the selected AGC parameter; adjust theadjustable gain level of the AGC protocol based on a range included inthe selected AGC parameter; and select a resulting gain level of theadjustable gain level to be the result of the AGC protocol.
 5. Theapparatus of claim 2, wherein the contextual data includes at least oneof location data, panelist data, demographic data, channel data, stationdata, time data, or a sound pressure level.
 6. The apparatus of claim 2,wherein to select the AGC parameter for the AGC protocol, the processorcircuitry is to: obtain the contextual data from a meter; identify oneor more prior gain levels included in a portion of the historical datastored in conjunction with at least a portion of prior contextual datathat matches the contextual data obtained from the meter; anddetermining the AGC parameter based on the one or more prior gainlevels.
 7. An apparatus comprising: means for selecting an automaticgain control (AGC) parameter for an AGC protocol based on historicaldata corresponding to contextual data; means for performing the AGCprotocol based on the selected AGC parameter; and means for storing aresult of the AGC protocol in conjunction with the contextual data toupdate the historical data.
 8. The apparatus of claim 7, wherein the AGCparameter is at least one of an initial gain level of the AGC protocolor a range of gain levels to apply in the AGC protocol.
 9. The apparatusof claim 7, wherein to perform the AGC protocol, the means forperforming is to: initialize an adjustable gain level of the AGCprotocol to an initial gain level corresponding to the selected AGCparameter; adjust the adjustable gain level of the AGC protocol based onthe selected AGC parameter; and select a resulting gain level of theadjustable gain level to be the result of the AGC protocol.
 10. Theapparatus of claim 7, wherein the contextual data includes at least oneof location data, panelist data, demographic data, channel data, stationdata, time data, or a sound pressure level.
 11. The apparatus of claim7, wherein to select the AGC parameter for the AGC protocol, the meansfor selecting is to: obtain the contextual data from a meter; identifyone or more prior gain levels included in a portion of the historicaldata stored in conjunction with at least a portion of prior contextualdata that matches the contextual data obtained from the meter; anddetermine the AGC parameter based on the one or more prior gain levels.12. An apparatus comprising: at least one memory; computer readableinstructions; and processor circuitry to execute the computer readableinstructions to: select an automatic gain control (AGC) parameter for anAGC protocol based on historical data corresponding to contextual data;perform the AGC protocol based on the selected AGC parameter; and updatethe historical data based on the contextual data and a result of the AGCprotocol.
 13. The apparatus of claim 12, wherein the AGC parameter is atleast one of an initial gain level of the AGC protocol or a range ofgain levels to apply in the AGC protocol.
 14. The apparatus of claim 12,wherein to perform the AGC protocol, the processor circuitry to:initialize an adjustable gain level of the AGC protocol to an initialgain level corresponding to the selected AGC parameter; adjust theadjustable gain level of the AGC protocol based on a range included inthe selected AGC parameter; and select a resulting gain level of theadjustable gain level to be the result of the AGC protocol.
 15. Theapparatus of claim 12, wherein the contextual data includes at least oneof location data, panelist data, demographic data, channel data, stationdata, time data, or a sound pressure level.
 16. The apparatus of claim12, wherein the processor circuitry is to update the historical databased on the contextual data and a result of the AGC protocol.
 17. Theapparatus of claim 12, wherein the processor circuitry is to: obtain thecontextual data from a meter; identify one or more prior gain levelsincluded in a portion of the historical data stored in conjunction withat least a portion of the contextual data; and determine the AGCparameter based on the one or more prior gain levels.
 18. An apparatuscomprising: means for selecting an automatic gain control (AGC) protocolto select an AGC parameter for the AGC protocol based on historical datacorresponding to contextual data; means for performing the AGC protocolbased on the selected AGC parameter; and means for updating thehistorical data based on the contextual data and a result of the AGCprotocol.
 19. The apparatus of claim 18, wherein the AGC parameter is atleast one of an initial gain level of the AGC protocol or a range ofgain levels to apply in the AGC protocol.
 20. The apparatus of claim 18,wherein to perform the AGC protocol, the means for performing is to:initialize an adjustable gain level of the AGC protocol to an initialgain level corresponding to the selected AGC parameter; adjust theadjustable gain level of the AGC protocol based on the selected AGCparameter; and select a resulting gain level of the adjustable gainlevel to be the result of the AGC protocol.
 21. The apparatus of claim18, wherein the means for selecting is to: obtain the contextual datafrom a meter; identify one or more prior gain levels included in aportion of the historical data stored in conjunction with at least aportion of prior contextual data that matches the contextual dataobtained from the meter; and determine the AGC parameter based on theone or more prior gain levels.